/*
 * To change this template, choose Tools | Templates
 * and open the template in the editor.
 */

package com.rafkind.crawl.battle;

import com.rafkind.crawl.data.Creature;
import com.rafkind.crawl.data.Effect;

/**
 *
 * @author dave
 */
public interface BattleListener {
  void battleStart(Battle battle);
  void roundStart(Battle battle);
  void beforeActorDecision(Battle battle, Creature creature);
  void afterActorDecision(Battle battle, Creature creature);
  void beforeActorAction(Battle battle, Creature creature);
  void afterActorAction(Battle battle, Creature creature);
  void attackHit(Creature source, Effect effect, Creature target);  
  void attackMiss(Creature source, Effect effect, Creature target);  
  void attackDamage(Creature source, Effect effect, Creature target, int damage);
}
